草庐IT

SQL 多列过滤

全部标签

c# - 过滤节点文本中包含大于字符的 XML 节点

我有一个来自XML文件的LINQ查询。我正在过滤掉某些具有空子节点的节点,但也想过滤掉包含非法字符的节点。从下面的示例中,您可以看到我正在尝试过滤其中也包含大于字符的节点。(参见XML示例中的child3)但是,这不起作用。我可以测试节点内的其他字符,如*,但不起作用。如何修改我的LINQ查询以检查节点内的大于字符。123456BSmithBobSmithAcmeCompanySuite3B1234MainStreet...varroot=XElement.Parse(xmlText);varelementsThatCanBeEmpty=newHashSet{XName.Get("ch

sql - Oracle Query 从更复杂的 XML clob 中获取数据

我有一个相当复杂的clob,在oracle中填充了xml,我想在SQL查询中解析它,就像我过去使用Extract和ExtractValue一样。名称类型属性CLOB我过去使用的简单查询SELECTEXTRACT(EXTRACT(xmltype.createxml(ATTRIBUTES),'/Attributes/Map/entry[@key=""buildMapRule""]'),'/entry/@value').getStringVal()ASRULEFROMSPT_APPLICATION它曾经像这样从XML中获取简单数据但现在我有这样的东西trueAccountIndexAccou

c# - XPath 显式索引过滤器性能

我正在创建一个xslstylehseet并想出了这个(在我看来是不合逻辑的行为):这个XPath:/root/element[1][@attr1!='1'or@attr2!='test']比这个XPath慢得多:/root/element[count(preceding-sibling::element)+1=1)and(@attr1!='1'or@attr2!='test')]我有50个示例xml,第一个XPath需要大约55秒。使用第二个XPath需要大约4秒!我使用XslCompiledTransform(C#.NET4.5)。有人可以解释为什么第一个XPath比第二个慢得多吗?

Java 生成的 XML 在 .Net/SQL 中显示特殊字符

我们有一个java桌面应用程序,它使用JAXB生成XML文件,然后由.Net应用程序读取并存储在SQL服务器数据库中。我们发现Java中的回车符而不是.Net/SQL中的回车符/换行符。有没有办法告诉Java或Jaxb同时包含回车符和换行符。有没有办法让.Net将它们放入。CDATAblock有帮助吗?谢谢。 最佳答案 您究竟是如何创建XML文件的?数据是否在任何时候都通过PrintStream?如果是这样,那么也许这就是引入系统相关的行分隔符的时刻。有问题的换行符到底在哪里?在文本元素内?或者在XML标签之间?如果是前者,那么你应

XML 上的 SQL 迭代

我正在尝试从表中读取xml数据字段并将此数据插入另一个数据库。XML文档如下所示:1234我的想法是获取1个id并插入,获取另一个并插入,依此类推。我尝试使用xquery,但我能得到的最好结果是将所有数据放在一起,但我需要插入分隔的id:/有什么帮助吗?D: 最佳答案 DECLARE@xxmlSET@x='1234'INSERTTableNameSELECTT.c.value('.','int')FROM@x.nodes('//id')T(c) 关于XML上的SQL迭代,我们在Stack

sql-server - 使用 XML 输入的 SQL SELECT

我目前有一个响应HTTP请求的C#应用程序。HTTP请求(XML)的主体被传递到SQLServer,此时数据库引擎执行正确的指令。其中一条指令用于使用客户的id(InvoiceLoad)加载有关发票的信息:johndoe@gmail.com我需要对发票表(包含关联的电子邮件地址)执行SELECT操作。我试过使用:SELECT'Date','Status','Location'FROMInvoicesWHEREEmail_Address=Invoice.A.value(.)usinganxml.nodes('InvoiceLoad/Invoice/CustomerId')Invoice(

c# - 我想将 XML Like 字符串拆分为 c# 或 sql 中的标记

我想在c#或sql中将XMLLike字符串拆分为标记。例如输入字符串就像C.QiaoandR.Melhem,"ReducingCommunication",1995.我想要这个输出:CAUTHOR.AUTHORQiaoAUTHORandRAUTHOR.AUTHORMelhemAUTHOR,"ReducingTITLECommunicationTITLE",1995DATE. 最佳答案 这是对如何解决这个问题的第一次尝试,考虑了以下几点:1.XML字符串将是有效的(即标签之间不会有任何无效字符)像这样:stringxml=@"C.Qi

sql-server - 动态 XML 到存储过程插入

我有类似这样的xml:kim和lee是我数据库中表的名称。现在我必须创建一个存储过程来将上面xml中的值插入到kim和lee中。我可以使用OPENXML获取表名,并且我知道我可以使用这样的查询来插入(例如)kim值:declare@tempChild1table(idvarchar(20),namevarchar(50),activebit)selectC.value('@id','varchar(20)')asid,C.value('@name','varchar(50)')asname,C.value('@active','bit')asactive,from@xml.nodes(

SQL Server XQuery 返回错误

我正在对SQLServer2012中的XML数据类型列执行查询。数据示例是:ShaiBassli...我正在尝试编写一个查询以返回名字。此查询按预期返回名字列表:WITHXMLNAMESPACES('http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/Resume'ASns)SELECT[Resume].query('(//ns:Name.First)').value('.[1]','nvarchar(100)')FROMHumanResources.JobCandidate;但是,这个查询返回一个错误:WITH

SQL xml输出参数抛出错误?

我有一个SQLServer存储过程,它的输出参数类型为xml。在我的coldfusion代码中,我不确定将哪个cfsqltype用于xml变量。我尝试在以下代码中使用cf_sql_varchar:但是我得到以下错误:Implicitconversionfromdatatypexmltovarcharisnotallowed.UsetheCONVERTfunctiontorunthisquery.有什么方法可以在coldfusion中处理xml输出参数,而不必更改存储过程以返回varchar而不是xml? 最佳答案 很遗憾,您的问题的